booting dom0 on AMD introduced by -unstable cset 13213:
bf25488db8eb.
Signed-off-by: Steven Hand <steven@xensource.com>
/* endless idle loop with no priority at all */
while (1) {
while (!need_resched()) {
+ void (*idle)(void);
if (__get_cpu_var(cpu_idle_state))
__get_cpu_var(cpu_idle_state) = 0;
rmb();
+ idle = pm_idle;
+
+ if (!idle)
+ idle = xen_idle;
if (cpu_is_offline(cpu))
play_dead();
__get_cpu_var(irq_stat).idle_timestamp = jiffies;
- pm_idle();
+ idle();
}
preempt_enable_no_resched();
schedule();
void __devinit select_idle_routine(const struct cpuinfo_x86 *c)
{
- if (!pm_idle)
- pm_idle = xen_idle;
}
static int __init idle_setup (char *str)
/* endless idle loop with no priority at all */
while (1) {
while (!need_resched()) {
+ void (*idle)(void);
+
if (__get_cpu_var(cpu_idle_state))
__get_cpu_var(cpu_idle_state) = 0;
rmb();
-
+ idle = pm_idle;
+ if (!idle)
+ idle = xen_idle;
if (cpu_is_offline(smp_processor_id()))
play_dead();
enter_idle();
- pm_idle();
+ idle();
__exit_idle();
}
void __cpuinit select_idle_routine(const struct cpuinfo_x86 *c)
{
- if (!pm_idle)
- pm_idle = xen_idle;
}
static int __init idle_setup (char *str)